Dynamic Parallel Tree Contraction ∗ ( Extended
نویسندگان
چکیده
Parallel tree contraction has been found to be a useful and quite powerful tool for the design of a wide class of efficient graph algorithms. We propose a corresponding technique for the parallel solution of incremental problems. As our computational model, we assume a variant of the CRCW PRAM where we can dynamically activate processors by a forking operation. We consider a dynamic binary tree T of ≤ n nodes and unbounded depth. We describe a procedure, which we call the dynamic parallel tree contraction algorithm, which incrementally processes various parallel modification requests and queries: (1) parallel requests to add or delete leaves of T , or modify labels of internal nodes or leaves of T , and also (2) parallel tree contraction queries which require recomputing values at specified nodes. Each modification or query is with respect to a set of nodes U in T . Our dynamic parallel tree contraction algorithm is a randomized algorithm that takesO(log(|U | logn)) expected parallel time using O( |U| log n log(|U| log n) ) processors. We give a large number of applications (with the same bounds), including: (a) maintaining the usual tree properties (such as number of ancestors, preorder, etc.), (b) Eulerian tour, (c) expression evaluation, (d) least common ancestor, and (e) canonical forms of trees. Previously, there where no known parallel algorithms for incrementally maintaining and solving such problems in parallel time less than Θ(log n). In deriving our incremental algorithms, we solve a key subproblem, namely a processor activation problem, within the same asymptotic bounds, which may be useful in the ∗This research was supported by DARPA/ISTO Grant N00014-91J-1985, Subcontract KI-92-01-0182 of DARPA/ISTO prime Contract N00014-92-C-0182, NSF Grant NSF-IRI-91-00681, and NASA subcontract 550-63 of prime Contract NAS5-30428. †Permanent address: Department of Computer Science, Duke University, Box 90129, Durham, NC 27708–0129 design of other parallel incremental algorithms. This algorithm uses an interesting persistent parallel data structure involving a non-trivial construction. In a subsequent paper, we apply our dynamic parallel tree contraction technique to various incremental graph problems: maintaining various properties, (such as coloring, minimum covering set, maximum matching, etc.) of parallel series graphs, outerplanar graphs, Helin networks, bandwidth-limited networks, and various other graphs with constant separator size.
منابع مشابه
Parallel h - v Drawings of Binary Trees ? Panagiotis
In this paper we present a method to obtain optimal h-v and inclusion drawings in parallel. Based on parallel tree contraction, our method computes optimal (with respect to a class of cost functions of the enclosing rectangle) drawings in O(log 2 n) parallel time by using a polynomial number of EREW processors. The method can be extended to compute optimal inclusion layouts in the case where ea...
متن کاملDynamizing Static Algorithms, with Applications to Dynamic Trees and History Independence
We describe a machine model for automatically dynamizing static algorithms and apply it to historyindependent data structures. Static programs expressed in this model are dynamized automatically by keeping track of dependences between code and data in the form of a dynamic dependence graph. To study the performance of such automatically dynamized algorithms we present an analysis technique base...
متن کاملMATHEMATICAL ENGINEERING TECHNICAL REPORTS A Parallel Tree Contraction Algorithm on Non-Binary Trees
Parallel tree contraction is an important framework to develop efficient parallel algorithms on trees. Parallel tree contraction gives an appropriate scheduling for parallel computations on trees, and the scheduling brings efficient parallel algorithms to us. While there are many studies for efficient algorithms of parallel tree contraction and implementation of various parallel computations ba...
متن کاملExtending Parallel Pseudo-Code Language Peril-L
In this paper, we propose to extend the Peril-L parallel pseudo-code language. The extensions added to the Peril-L are essential to express non-trivial parallel algorithms. We demonstrate the effectiveness of the extended Peril-L by showing the parallel algorithms for the Jacobi method for solving differential equations and the dynamic programming method for finding the optimal binary search tree.
متن کاملParallel Tree Contraction Part 1: Fundamentals
This paper introduces parallel tree contraction: a new bottom-up technique for constructing parallel algorithms on trees. Contraction can be used to solve a wide variety of problems. Two examples included in this article are expression evaluation and subexpression elimination. In this paper we show these applications only require time and processors on a randomized PRAM or processors on a deter...
متن کامل